package com.example.springsecurity.common.vo;

import com.example.springsecurity.common.vo.base.BaseVo;
import com.example.springsecurity.common.vo.login.Meta;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.util.List;

/**
 * 菜单信息表(SystemMenu)Vo
 *
 * @author aman
 * @since 2025-01-15 16:59:01
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class SystemMenuListVo extends BaseVo {
    //父节点id
    @Schema(description = "父节点id")
    private Integer parentId;
    //唯一标识路径
    @Schema(description = "唯一标识路径")
    private String path;
    //1：目录；2：菜单；3: 按钮
    @Schema(description = "1：目录；2：菜单；3: 按钮")
    private String menuType;
    //菜单名称
    @Schema(description = "菜单名称")
    private String menuName;
    //路由名称
    @Schema(description = "路由名称")
    private String routeName;
    //权限标识
    @Schema(description = "权限标识")
    private String permission;
    //组件标识
    @Schema(description = "组件标识")
    private String component;
    //元数据
    @Schema(description = "元数据")
    private Meta meta;
    //状态；1:可用，2:禁用
    @Schema(description = "状态；1:可用，2:禁用")
    private String status;
    //是否已删除：0->未删除；1->已删除
    @Schema(description = "是否已删除：0->未删除；1->已删除")
    private Integer deleted;
    @Schema(description = "children")
    private List<SystemMenuListVo> children;
}

